d18f67f0ac9004d33feceb3cc9ad7e2d6aed0112,flyway-core/src/main/java/org/flywaydb/core/internal/info/MigrationInfoImpl.java,MigrationInfoImpl,compareTo,#MigrationInfo#,281

Before Change



    @SuppressWarnings("NullableProblems")
    public int compareTo(MigrationInfo o) {
        int result = compareNullsLast(getInstalledRank(), o.getInstalledRank());
        if (result != 0) {
            return result;
        }
        result = compareNullsLast(getVersion(), o.getVersion());
        if (result != 0) {
            return result;
        }

After Change



    @SuppressWarnings("NullableProblems")
    public int compareTo(MigrationInfo o) {
        if ((getInstalledRank() != null) && (o.getInstalledRank() != null)) {
            return getInstalledRank() - o.getInstalledRank();
        }

        MigrationState state = getState();
        MigrationState oState = o.getState();

        if (((getInstalledRank() != null) || (o.getInstalledRank() != null))
                && (!(state == MigrationState.BELOW_BASELINE || oState == MigrationState.BELOW_BASELINE
                || state == MigrationState.IGNORED || oState == MigrationState.IGNORED))) {
            if (getInstalledRank() != null) {
                return Integer.MIN_VALUE;
            }
            if (o.getInstalledRank() != null) {
                return Integer.MAX_VALUE;
            }
        }

        if (getVersion() != null && o.getVersion() != null) {
            return getVersion().compareTo(o.getVersion());
        }
        if (getVersion() != null) {